package com.neu.entity.DTO;

import com.neu.base.BaseEntity;
import com.neu.entity.Task;
import com.neu.entity.User;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.List;

@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TaskDTO extends BaseEntity {
    private String taskId;
    /**
     * 租户ID
     */
    private String tenantId;
    /**
     * 租户名称
     */
    private String tenantName;
    /**
     * 项目ID
     */
    private String projectId;
    /**
     * 项目名称
     */
    private String projectName;
    /**
     * 前置任务ID
     */
    private String preTask;
    /**
     * 前置任务名称
     */
    private String preTaskName;
    /**
     * 前置任务详情
     */
    private Task preTaskDetail;
    /**
     * 任务负责人id
     */
    private String assignedTo;
    /**
     * 任务负责人姓名
     */
    private String assignedName;
    /**
     * 任务名称
     */
    private String taskName;
    /**
     * 任务描述
     */
    private String description;
    /**
     * 任务类型 1 功能点分析   2 造价综合评估
     */
    private String taskType;
    /**
     * 任务状态 0 未开始  1 进行中  2 已完成
     */
    private String taskStatus;
    /**
     * 任务进度 0-100 之间
     */
    private Integer progress;
    /**
     * 任务优先级 0 低  1 中  2 高
     */
    private String priority;
    /**
     * 任务截止日期
     */
    private LocalDateTime dueDate;

    /**
     * 参与该任务的用户列表
     */
    private List<User> userList;

}
